An Automated Testing Environment to support Operational Profiles of Software Intensive Systems
نویسنده
چکیده
Raytheon Systems Company is a defense electronics company that has been actively engaged in a software process improvement effort at the organizational and program levels for over a decade. The company uses the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) as a basis for their improvement efforts and has been formally assessed at level 3 (defined). The project is a real-time embedded software application using a heterogeneous computer architecture consisting of the two fundamental computing environments; • PowerPC single board computer (SBC) using Ada for embedded command and control, • Digital signal processors (DSP) using the C programming language for a primarily signal processing algorithm based application. There are significant real-time constraints within the signal processing application. The program follows a tailored version of DoD-STD-2167A and MIL-STD-498 documentation standards. The project is built upon an Integrated Product Team (IPT) structure. There is a fully defined software development process as well as system engineering and hardware development processes. Our testing approach is based on the concepts of software testing based on statistical principles. The statistical testing approach to software treats the software like a statistical experiment. A statistical subset of all possible software uses is first generated. Performance on this subset is used to form conclusions about operational performance based on the usage model developed. The expected operational use is represented in a usage model of the software. Test cases are then randomly generated from the usage model. These tests are executed in an operational environment. Failures are interpreted according to mathematical and statistical models. This paper will focus on the successes and issues associated with developing a statistical testing environment for an industrial software project. The paper will also describe how both statistical testing based on software models and traditional testing based on unit and other functional tests can be combined into an effective approach to testing large software intensive systems.
منابع مشابه
Operational Testing of Software-Intensive Systems: Observations and Comments
Three operational test events from separate ACAT 1D acquisition programs are the foundation for this study. The generalized effect of the software systems on individual test results is examined. The test results support discussions related to several current test and evaluation (T&E) initiatives such as early integrated testing, cost reduction by sharing high-demand testing assets, and mission-...
متن کاملIASSF: A Simulation For F/A-18 Avionics Software Testing
The Integrated Avionics Systems Support Facility (IASSF) provides a simulated environment to test F/A-18 avionics, avionics software and system behaviour on the ground without the initial need for real F/A-18 flight testing. The Royal Australian Air Force (RAAF) has commissioned IASSF to allow mission critical Operational Flight Programs (OFPs) in the F/A-18 to be written, modified and tested. ...
متن کاملExpressing and implementing operational profiles for reactive software validation
Lutess is a tool that we developed for testing reactive synchronous software and which is being used in different industrial contexts. It offers several formal testing methods with automatic generation of test data from the environment specification. Lutess provides also an approach to assign a probability to the next event issued by the environment. However, a Lutess’ user faces the problem of...
متن کاملDatabase Sampling to Support the Development of Data-Intensive Applications
A prototype database is a model of a database which exhibits the desired properties, in terms of its schema and/or data values, of an operational database. Database prototyping has been proposed as a technique to support the database design process in particular, and the whole data-intensive application development process in general (e.g. requirements elicitation, software testing, experimenta...
متن کاملAn automatic test case generator for evaluating implementation of access control policies
One of the main requirements for providing software security is the enforcement of access control policies which aim to protect resources of the system against unauthorized accesses. Any error in the implementation of such policies may lead to undesirable outcomes. For testing the implementation of access control policies, it is preferred to use automated methods which are faster and more relia...
متن کامل